gpsbabel_ini: TInifile = nil;\r
\r
resourcestring\r
- SGPSBabelURL = 'http://www.gpsbabel.org';\r
- SGPSBabelTitle = 'GPSBabelGUI-2';\r
+ SGPSBabelURL = 'http://www.gpsbabel.org';\r
+ SGPSBabelTitle = 'GPSBabelGUI-2';\r
+\r
+const\r
+ SGPSBabelIniFilename = 'gpsbabel.ini';\r
+ SGPSBabelExeFilename = 'gpsbabel.exe';\r
\r
var\r
gpsbabel_exe: string;\r
gpsbabel_minor, gpsbabel_major, gpsbabel_release: Integer;\r
SGPSBabelGUIVersion: string;\r
CFixedFileinfo: TVSFixedFileInfo;\r
+ gpsbabel_inifile: TInifile;\r
\r
const\r
WM_STARTUP = WM_USER + 1;\r
name: string;\r
hint: string;\r
otype: Byte;\r
- def: PChar;\r
+ def: PChar; // default value from gpsbabel or ini-file\r
+ gbdef: PChar; // default value from gpsbabel \r
min: PChar;\r
max: PChar;\r
chb: TCheckBox;\r
opt: POption;\r
list: TStringList;\r
i: Integer;\r
+ s: string;\r
begin\r
StrPCopy(buff, ALine);\r
StrCat(buff, #9);\r
1:\r
opt.format := string(cin);\r
2:\r
- opt.name := string(cin);\r
+ begin\r
+ opt.name := string(cin);\r
+ s := gpsbabel_ini.ReadString(opt.Format, opt.Name, #01);\r
+ if (s <> #01) then\r
+ opt.def := StrNew(PChar(s));\r
+ end;\r
3:\r
opt.hint := string(cin);\r
4:\r
end;\r
5:\r
if (cin^ <> #0) then\r
- opt.def := StrNew(cin);\r
+ begin\r
+ opt.gbdef := StrNew(cin);\r
+ if (opt.def = nil) then\r
+ opt.def := opt.gbdef;\r
+ end;\r
6:\r
if (cin^ <> #0) then\r
opt.min := StrNew(cin);\r
end;\r
end;\r
\r
+function Open_gpsbabel_ini(): TInifile;\r
+var\r
+ s: string;\r
+begin\r
+ s := SysUtils.ExpandFileName(SGPSBabelIniFilename);\r
+ if not(SysUtils.FileExists(s)) then\r
+ s := SysUtils.ExtractFilePath(ParamStr(0)) + SGPSBabelIniFilename;\r
+ if not(SysUtils.FileExists(s)) then\r
+ Result := TIniFile.Create(SGPSBabelIniFilename)\r
+ else\r
+ Result := TIniFile.Create(s)\r
+end;\r
+\r
initialization\r
\r
- gpsbabel_exe := SysUtils.ExtractFilePath(ParamStr(0)) + 'gpsbabel.exe';\r
+ gpsbabel_exe := SysUtils.ExtractFilePath(ParamStr(0)) + SGPSBabelExeFilename;\r
SGPSBabelGUIVersion := GetFileVersion(ParamStr(0));\r
+ gpsbabel_ini := Open_gpsbabel_ini();\r
\r
end.\r